Improve pidTPCML.cxx#1025
Conversation
* Out of line code to reduce memory usage while compiling pidTPC tasks * Change to use an array for the intermediate tracks representation. It would probably be better to read directly the values from the arrow tables, but that will come in a different PR.
|
@njacazio @ChSonnabend could you have a look? Besides the mechanical change of moving the inference code in a separate .cxx file (this is probably one of the causes why pidTPC takes so much memory to compile), I have also changed the intermediate track representation to be an std::array, which should already somewhat speedup the whole thing. A better approach would be to find a way to have ONNX runtime digest a columnwise representation so that it can bulk process the whole arrow table, rather than one track at the time. |
|
Hi Giulio, |
|
@iarsene could you review and eventually approve? |
|
Hi, indeed, thanks a lot this was needed! |
* Out of line code to reduce memory usage while compiling pidTPC tasks * Change to use an array for the intermediate tracks representation. It would probably be better to read directly the values from the arrow tables, but that will come in a different PR.
It would probably be better to read directly the values from the
arrow tables, but that will come in a different PR.